package org.springblade.modules.admin.vo.cert;

import com.google.common.base.Objects;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Map;

/**
 * @Description 人员证件excelVO
 * @Author ysq
 * @Date 2024/04/03
 **/
@Data
public class ExcelEntityVO {

	@ApiModelProperty(value = "人员id")
	private Long userId;

	@ApiModelProperty(value = "手机号码")
	private String phone;

	@ApiModelProperty(value = "证件类型id")
	private Long certTypeId;

	@ApiModelProperty(value = "证书类型")
	private String certTypeName;

	@ApiModelProperty(value = "作业项目id")
	private Long certWorkId;

	@ApiModelProperty(value = "作业项目")
	private String certWorkName;

	@ApiModelProperty(value = "证书编号")
	private String certNum;

	@ApiModelProperty(value = "有效期开始")
	private String startTime;

	@ApiModelProperty(value = "有效期结束")
	private String endTime;

	private Integer num;

	private Map<String, Object> itemMap;

	@Override
	public boolean equals(Object o) {
		if (this == o) return true;
		if (o == null || getClass() != o.getClass()) return false;
		ExcelEntityVO that = (ExcelEntityVO) o;
		return Objects.equal(phone, that.phone) && Objects.equal(certTypeName, that.certTypeName) && Objects.equal(certWorkName, that.certWorkName) && Objects.equal(certNum, that.certNum) && Objects.equal(startTime, that.startTime) && Objects.equal(endTime, that.endTime);
	}

	@Override
	public int hashCode() {
		return Objects.hashCode(phone, certTypeName, certWorkName, certNum, startTime, endTime);
	}
}
